export const props = {
  tableData: {
    required: true,
    type: Array,
  },
  footerData: {
    type: Array,
    default: function () {
      return []
    },
  },
  showHeader: {
    type: Boolean,
    default: true,
  },
  columns: {
    type: Array,
    required: true,
  },
  // row key field for row expand、row selection
  rowKeyFieldName: {
    type: String,
    default: null,
  },
  scrollWidth: {
    type: [Number, String],
    default: null,
  },
  maxHeight: {
    type: [Number, String],
    default: null,
  },
  fixedHeader: {
    type: Boolean,
    default: true,
  },
  fixedFooter: {
    type: Boolean,
    default: true,
  },
  // border around
  borderAround: {
    type: Boolean,
    default: true,
  },
  // border horizontal
  borderX: {
    type: Boolean,
    default: true,
  },
  // border vertical
  borderY: {
    type: Boolean,
    default: false,
  },
  // event custom option
  eventCustomOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  cellStyleOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  cellSpanOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  rowStyleOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  /*
  virual scroll option
  {
      enable:true,
      bufferCount:10, // 缓冲的数据
      minRowHeight:40,
      scrolling:(startRowIndex,visibleStartIndex,visibleEndIndex,visibleAboveCount,visibleBelowCount)=>{}
  }
  */
  virtualScrollOption: {
    type: Object,
    default: null,
  },
  sortOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  expandOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  checkboxOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  radioOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  cellSelectionOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  cellAutofillOption: {
    type: [Object, Boolean],
    default: function () {
      return null
    },
  },
  editOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  columnHiddenOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  contextmenuHeaderOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  contextmenuBodyOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  clipboardOption: {
    type: Object,
    default: function () {
      return null
    },
  },
  columnWidthResizeOption: {
    type: Object,
    default: function () {
      return null
    },
  },
}


